﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;

using QLTTAN.DAL;
using QLTTAN.DTO;
namespace QLTTAN.BLL
{
    public class CT_LopHocBLL
    {
        CT_LopHocDAL CT_LH_DAL;

        public CT_LopHocBLL()
        {
            CT_LH_DAL = new CT_LopHocDAL();
        }

        /// <summary>
        /// Lấy danh sách học viên của lớp.
        /// Với tham số vào là MaLop.
        /// </summary>
        /// <param name="CT_LH_DTO"></param>
        /// <returns></returns>
        public DataTable CT_LopHoc_Load(CT_LopHocDTO CT_LH_DTO)
        {
            return CT_LH_DAL.CT_LopHoc_Load(CT_LH_DTO);
        }

        ///// <summary>
        ///// Lấy danh sách học viên của lớp.
        ///// Với tham số vào là MaKhoaHoc, MaLoaiLop.
        ///// </summary>
        ///// <param name="KH_DTO"></param>
        ///// <param name="LLH_DTO"></param>
        ///// <returns></returns>
        //public DataTable CT_LopHoc_Load(KhoaHocDTO KH_DTO, LoaiLopHocDTO LLH_DTO)
        //{
        //    return CT_LH_DAL.CT_LopHoc_Load(KH_DTO, LLH_DTO);
        //}

        /// <summary>
        /// Lấy thông tin của học viên với MaHV của lớp học của khóa hiện tại.
        /// Do mỗi lớp ở một khóa chỉ có 1 HV duy nhất.
        /// </summary>
        /// <param name="CT_LH_DTO"></param>
        /// <returns></returns>
        public DataRow CT_LopHoc_GetInfo(CT_LopHocDTO CT_LH_DTO)
        {
            return CT_LH_DAL.CT_LopHoc_GetInfo(CT_LH_DTO);
        }

        public DataTable CT_LopHoc_FindHV(KhoaHocDTO KH_DTO, LoaiLopHocDTO LLH_DTO, HocVienDTO HV_DTO)
        {
            return CT_LH_DAL.CT_LopHoc_FindHV(KH_DTO, LLH_DTO, HV_DTO);
        }

        public int CT_LopHoc_Insert(CT_LopHocDTO LH_DTO)
        {
            return CT_LH_DAL.CT_LopHoc_Insert(LH_DTO);
        }

        public int CT_LopHoc_Update(CT_LopHocDTO LH_DTO)
        {
            return CT_LH_DAL.CT_LopHoc_Update(LH_DTO);
        }

        public int CT_LopHoc_Delete(CT_LopHocDTO LH_DTO)
        {
            return CT_LH_DAL.CT_LopHoc_Delete(LH_DTO);
        }
    }
}
